java如何以不同的方式编写这部分代码?
import java.util.*;
public class something {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int kvadratek, a, b;
a = sc.nextInt();
b = sc.nextInt();
--a;
--b;
if(a>b) {
kvadratek=b;
b=a;
a=kvadratek;
System.out.println((a*(a+1)*(2*a+1)/6-((a+1)*a/2)*(a+b)+(a+1)*a*b));
}
else {
System.out.println(a*(a+1)*(2*a+1)/6-((a+1)*a/2)*(a+b)+(a+1)*a*b);
}
}
}
我是java编码新手,我有一个问题,我是否可以写这部分
kvadratek=b;
b=a;
a=kvadratek;
不同的是,它会给我与其他部分相同的结果。有没有可能用if,while来做呢?如果我插入,我实际上不需要代码的else部分
kvadratek=b;
b=a;
a=kvadratek;
但有没有办法改变这一部分
# 1 楼答案
为了避免重复代码,首先要将其提取到一个方法中:
现在您希望
b
是两个数字中最大的一个,而a
是另一个。您可以使用Math.max
和Math.min
代替交换它们:# 2 楼答案
您可以使用以下选项:
在这段代码之后,
b
将是原始a
和b
之间的较大值,而a
将是较小值,因此不再需要if/else